home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 2: Applications / Linux Cubed Series 2 - Applications.iso / editors / emacs / xemacs / xemacs-1.004 / xemacs-1 / xemacs-19.13 / lisp / sunpro / sunpro-sparcworks.el < prev    next >
Encoding:
Text File  |  1995-04-05  |  3.1 KB  |  131 lines

  1. ;;; sunpro-sparcworks.el --- support SPARCworks manager ToolTalk messages
  2.  
  3. ;; Copyright (C) 28 Mar 1995  Sun Microsystems, Inc.
  4.  
  5. ;; Author:    Vladimir Ivanovic <vladimir@Eng.Sun.COM>
  6. ;; Maintainer:    Vladimir Ivanovic <vladimir@Eng.Sun.COM>
  7. ;; Created:    20 Mar 95
  8. ;; Version:    1.2
  9. ;; Header:    @(#) sunpro-sparcworks.el: v1.2 95/04/04 22:14:08
  10.  
  11. ;; Keywords:    SPARCworks, ToolTalk, messages
  12.  
  13. ;;; Commentary:
  14.  
  15. ;; Called from the SPARCworks Manager with the command:
  16. ;;
  17. ;;    xemacs -q -l sunpro-sparcworks $SUNPRO_SWM_TT_ARGS $SUNPRO_SWM_GUI_ARGS
  18. ;;
  19.  
  20. ;;; To Do:
  21.  
  22. ;;; Code:
  23.  
  24. (require 'cl)                ; Common Lisp compatibility
  25. (require 'cl-19)            ; Version for XEmacs 19
  26.  
  27. (defvar sunpro-sparcworks-ops
  28.   '("quit"
  29.     "hide"
  30.     "expose"
  31.     "PEI_CLOSE"
  32.     "PEI_OPEN"
  33.     "PEI_NOP")
  34.   "The ToolTalk operations that are handled.")
  35.  
  36. (defvar sunpro-sparcworks-callbacks
  37.   '(sp-sw-quit-handler
  38.     sp-sw-hide-handler
  39.     sp-sw-expose-handler
  40.     sp-sw-close-handler
  41.     sp-sw--open-handler
  42.     sp-sw-nop-handler)
  43.   "The ToolTalk operations that are handled.")
  44.  
  45. (defvar sunpro-sparcworks-invocation-count nil
  46.   "The number of XEmacsen invoked via the SPARCworks Manager.")
  47.  
  48. (defun sp-sw-quit-handler (msg pat)
  49.   (return-tooltalk-message msg 'reply)
  50.   (save-buffers-kill-emacs))
  51.  
  52. (defun sp-sw-hide-handler (msg pat)
  53.   (return-tooltalk-message msg 'reply)
  54.   (mapcar #'make-frame-invisible (frame-list)))
  55.  
  56. (defun sp-sw-expose-handler (msg pat)
  57.   (return-tooltalk-message msg 'reply)
  58.   (mapcar #'make-frame-visible (frame-list)))
  59.  
  60. (defun sp-sw-close-handler (msg pat)
  61.   (return-tooltalk-message msg 'reply)
  62.   (mapcar #'iconify-frame (frame-list)))
  63.  
  64. (defun sp-sw-open-handler (msg pat)
  65.   (return-tooltalk-message msg 'reply)
  66.   (mapcar #'deiconify-frame (frame-list)))
  67.  
  68. (defun sp-sw-nop-handler (msg pat)
  69.   (return-tooltalk-message msg 'reply)
  70.   '())
  71.  
  72. (register-tooltalk-pattern
  73.  (make-tooltalk-pattern
  74.   '(category TT_HANDLE
  75.        scope TT_SESSION
  76.       op "quit"
  77.     callback sp-sw-quit-handler)))
  78.  
  79. (register-tooltalk-pattern
  80.  (make-tooltalk-pattern
  81.   '(category TT_HANDLE
  82.        scope TT_SESSION
  83.       op "hide"
  84.     callback sp-sw-hide-handler)))
  85.  
  86. (register-tooltalk-pattern
  87.  (make-tooltalk-pattern
  88.   '(category TT_HANDLE
  89.        scope TT_SESSION
  90.       op "expose"
  91.     callback sp-sw-expose-handler)))
  92.  
  93. (register-tooltalk-pattern
  94.  (make-tooltalk-pattern
  95.   '(category TT_HANDLE
  96.        scope TT_SESSION
  97.       op "PEI_CLOSE"
  98.     callback sp-sw-close-handler)))
  99.  
  100. (register-tooltalk-pattern
  101.  (make-tooltalk-pattern
  102.   '(category TT_HANDLE
  103.        scope TT_SESSION
  104.       op "PEI_OPEN"
  105.     callback sp-sw-open-handler)))
  106.  
  107. (register-tooltalk-pattern
  108.  (make-tooltalk-pattern
  109.   '(category TT_HANDLE
  110.        scope TT_SESSION
  111.       op "PEI_NOP"
  112.     callback sp-sw-nop-handler)))
  113.  
  114. (defun sunpro-sparcworks-handle-command-line (arg)
  115.   "Handle the SPARCworks Manager-specific command line arguments."
  116.   (setq *sunpro-sparcworks-invocation-count* arg)
  117.   ;;Fix up the command-line in case there are more arguments
  118.   (setq command-line-args-left
  119.     (cdr command-line-args-left)))
  120.  
  121.  
  122. ;;; Initialize
  123. (setq command-switch-alist
  124.       (purecopy
  125.        (append '(("-swtm" . sunpro-sparcworks-handle-command-line))
  126.            command-switch-alist)))
  127.  
  128.  
  129. ;;; sunpro-sparcworks.el ends here
  130.  
  131.